<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        const map = new Map()

        // /* 增加数据 */
        map.set("six", "陆小凤")
        map.set("seven", "洪七公")
        map.set("eight", "袁八爷")

        /* 删除数据 */
        // map.delete("eight")
        // map.clear()

        /* 修改与增加一样 */
        map.set("seven", "白景琦")

        /* 查询数据 */
        console.log(map.get("six"));
        console.log(map.get("seven"));
        console.log(map.get("eight"));

        /* 更多查询 */
        console.log(map.size);

        // /* 查询所有的键或值 */
        console.log(map.keys());//MapIterator
        console.log(map.values());//MapIterator
        console.log(map.entries());//MapIterator

        /* 遍历迭代器（iterators） */
        for(let value of map.entries()){
            console.log(value);
        }

        /* 使用for-of循环遍历数组（数组也算迭代器） */
        for(let value of [1,2,3]){
            console.log(value);
        }

        // /* 查询有无键值 */
        console.log(map.has("seven"));
        console.log(map.has("nine"));

        /* 遍历 */
        map.forEach(
            (value, key, m) => console.log(key, value)
        );

    </script>
</body>

</html>